add_executable(cuda_test cuda_test.cu)
add_executable(cuda_array cuda_array.cu)
add_executable(cuda_vector cuda_vector.cu)
add_executable(cuda_template cuda_template.cu)
add_executable(cuda_functor cuda_functor.cu)
add_executable(cuda_lambda cuda_lambda.cu)
target_compile_options(cuda_lambda PRIVATE $<$<COMPILE_LANGUAGE:CUDA>:--extended-lambda>)

add_executable(cuda_thrust_foreach cuda_thrust_foreach.cu)
target_compile_options(cuda_thrust_foreach PRIVATE $<$<COMPILE_LANGUAGE:CUDA>:--extended-lambda>)